Skip to content

feat(objectql): package-first authoring — reject runtime creates into read-only packages (ADR-0070 D1/D2)#2285

Merged
os-zhuang merged 1 commit into
mainfrom
feat/adr-0070-pkgfirst-kernel
Jun 24, 2026
Merged

feat(objectql): package-first authoring — reject runtime creates into read-only packages (ADR-0070 D1/D2)#2285
os-zhuang merged 1 commit into
mainfrom
feat/adr-0070-pkgfirst-kernel

Conversation

@os-zhuang

Copy link
Copy Markdown
Contributor

What

Implements ADR-0070 D1 (no orphans) + D2 (writable-package predicate) in the kernel.

Why

A Studio business-user dogfood pass surfaced a bug family rooted in the absence of a package-first contract: read-only-after-publish (#2252), the orphan pile with no delete unit (#1946), and AI's com.workspace catch-all. See docs/adr/0070-package-first-authoring.md.

Verification

  • pnpm --filter @objectstack/objectql test — 706 green (updated protocol-save-meta-repo-path*.test.ts to assert rejection instead of null-coercion).
  • tsc clean. Kernel is the enforcement backstop; the Studio (objectui) and AI (cloud) surfaces resolve/redirect to a base before hitting it.

Part of the ADR-0070 package-first epic (kernel slice). Studio + AI surface PRs follow.

🤖 Generated with Claude Code

…able_package_required (ADR-0070 D1/D2)

Replaces the #2252 coerce-to-null stopgap with an actionable rejection, and
generalizes isLoadedPackage into isWritablePackage (drops the owns-an-object
heuristic that was the read-only-after-publish trap). Updates the repo-path
tests to assert rejection. Null stays a legacy overlay destination (D5 retires).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
spec Ready Ready Preview, Comment Jun 24, 2026 1:14pm

Request Review

@github-actions github-actions Bot added documentation Improvements or additions to documentation tests tooling size/m labels Jun 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): @objectstack/objectql.

14 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/concepts/core/services.mdx (via @objectstack/objectql)
  • content/docs/concepts/implementation-status.mdx (via @objectstack/objectql)
  • content/docs/concepts/metadata-lifecycle.mdx (via @objectstack/objectql)
  • content/docs/concepts/packages.mdx (via @objectstack/objectql)
  • content/docs/guides/authentication.mdx (via @objectstack/objectql)
  • content/docs/guides/deployment-vercel.mdx (via @objectstack/objectql)
  • content/docs/guides/formula.mdx (via packages/objectql)
  • content/docs/guides/kernel-services.mdx (via @objectstack/objectql)
  • content/docs/guides/objectql-migration.mdx (via @objectstack/objectql)
  • content/docs/guides/packages.mdx (via @objectstack/objectql)
  • content/docs/guides/plugins.mdx (via @objectstack/objectql)
  • content/docs/protocol/objectos/index.mdx (via @objectstack/objectql)
  • content/docs/protocol/objectql/state-machine.mdx (via @objectstack/objectql)
  • content/docs/releases/v9.mdx (via @objectstack/objectql)

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

@os-zhuang
os-zhuang merged commit d616e1d into main Jun 24, 2026
16 checks passed
@os-zhuang
os-zhuang deleted the feat/adr-0070-pkgfirst-kernel branch June 24, 2026 13:17
os-zhuang added a commit that referenced this pull request Jun 24, 2026
…ied (#2292)

Status Proposed → Accepted. Adds an Implementation status section (P1 kernel
#2285, P2 studio objectui#1970, P3 ai cloud#479/#481, tests cloud#480; live
dogfood: magic build + iterative changes all in one app.iojn base, no
com.workspace/orphans) and annotates the rollout (D1–D3 done, D4–D6 remaining).

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation size/m tests tooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant